package com.demo.java.OD201_250.OD211;

import java.util.Scanner;

/**
 * @author bug菌
 * @Source 公众号：猿圈奇妙屋
 * @des： 【最多提取子串数目】问题
 * @url： https://blog.csdn.net/weixin_43970743/article/details/145909565
 */
public class OdMain {
    public static void main(String[] args) {
        // 创建Scanner对象来接收用户输入
        Scanner scanner = new Scanner(System.in);

        // 读取输入字符串inputString和目标字符串targetString
        String inputString = scanner.nextLine();
        String targetString = scanner.nextLine();

        // 用于存储目标字符串的匹配位置
        int[] indicesArray = new int[targetString.length()];

        // 初始化一些变量
        int index = 0; // 当前匹配目标字符串的位置
        int count = 0; // 记录目标字符串匹配的次数
        int i = 0; // 用于遍历输入字符串

        // 主循环，直到遍历完输入字符串
        while (i < inputString.length() && index < targetString.length()) {
            // 如果当前字符匹配目标字符串的字符
            if (inputString.charAt(i) == targetString.charAt(index)) {
                // 记录匹配位置（位置从1开始计数）
                indicesArray[index] = i + 1;
                index++; // 移动到目标字符串的下一个字符

                // 将匹配过的位置标记为'0'，避免再次匹配
                inputString = inputString.substring(0, i) + "0" + inputString.substring(i + 1);
            }

            // 如果目标字符串已经完全匹配
            if (index == targetString.length()) {
                // 重置index为0，重新开始匹配
                index = 0;
                // 设置i为第一个匹配的位置，继续向后查找
                i = indicesArray[0];
                count++; // 匹配次数增加
            } else {
                i++; // 否则继续遍历输入字符串
            }
        }

        // 输出目标字符串匹配的总次数
        System.out.print(count);
    }
}